package com.flycms.module.app.dao;

import com.flycms.module.app.model.App;
import com.flycms.module.app.param.AppQueryParam;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * @author mdoenglang
 */

@Repository
public interface AppDao {

    int count(@Param("param") AppQueryParam param);

    List<App> selectByParam(@Param("param") AppQueryParam param,
                            @Param("index") Integer index,
                            @Param("size") Integer size);

    List<App> getHotAppList();

    List<App> queryAll();

    void updateHit(@Param("id") Long id);

    void updateEval(@Param("id") Long id);

    void insertSelective(App app);

    void updateSelective(App app);

    void del(@Param("id") Long id);

    App selectById(@Param("id") Long id);
}
